home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
SGI Developer Toolbox 6.1
/
SGI Developer Toolbox 6.1 - Disc 4.iso
/
public
/
Xprof
/
xmeasure
/
tstmisc.c
< prev
next >
Wrap
C/C++ Source or Header
|
1994-08-01
|
21KB
|
1,104 lines
/*==================================================================
* File : tstmisc.c
* Package: Xmeasure
*
* Author : Aloke Gupta.
*
* (C) Copyright 1992, Aloke Gupta.
* All rights granted to University of Illinois Board of Regents.
*==================================================================*/
#include "perf.h"
typedef struct {
int do_a; /* acceleration */
int do_t; /* threshold */
int acc_num; /* numerator of acceleration term */
int acc_denom; /* denominator of acceleration term */
int thresh; /* threshold term */
} PtrCntl;
typedef struct {
int timeout;
int interval;
int prefer_blanking;
int allow_exposures;
} ScreenSaver;
/* Shared variables */
static int i;
static Window window;
static PtrCntl ptr_cntl;
static unsigned long kbd_cntl_mask;
static XKeyboardControl kbd_cntl;
static XKeyboardState kbd_state;
static ScreenSaver screensaver;
/* ====================================================================== */
static unsigned long event_mask;
XEvent event;
int SendEvent(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XSendEvent(xd->display, xd->window, True, event_mask, &event);
}
int i_SendEvent(xd, xp)
XD *xd;
XParams *xp;
{
event_mask = ButtonPressMask;
event.type = ButtonPress;
}
int c_SendEvent(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GrabPointer(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XGrabPointer(xd->display, xd->window, True, ButtonPressMask,
GrabModeAsync, GrabModeAsync, None, None, CurrentTime);
}
int i_GrabPointer(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GrabPointer(xd, xp)
XD *xd;
XParams *xp;
{
XUngrabPointer(xd->display, CurrentTime);
}
/* ====================================================================== */
int UngrabPointer(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XUngrabPointer(xd->display, CurrentTime);
}
int i_UngrabPointer(xd, xp)
XD *xd;
XParams *xp;
{}
int c_UngrabPointer(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GrabButton(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XGrabButton(xd->display, AnyButton, AnyModifier, xd->window, True,
ButtonPressMask, GrabModeAsync, GrabModeAsync, None, None);
}
int i_GrabButton(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GrabButton(xd, xp)
XD *xd;
XParams *xp;
{
XUngrabButton(xd->display, AnyButton, AnyModifier, xd->window);
}
/* ====================================================================== */
int UngrabButton(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XUngrabButton(xd->display, AnyButton, AnyModifier, xd->window);
}
int i_UngrabButton(xd, xp)
XD *xd;
XParams *xp;
{
}
int c_UngrabButton(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
int ChangeActivePointerGrab(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XChangeActivePointerGrab(xd->display, ButtonPress, None, CurrentTime);
}
int i_ChangeActivePointerGrab(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_ChangeActivePointerGrab(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GrabKeyboard(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XGrabKeyboard(xd->display, xd->window, True,
GrabModeAsync, GrabModeAsync, CurrentTime);
}
int i_GrabKeyboard(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GrabKeyboard(xd, xp)
XD *xd;
XParams *xp;
{
XUngrabKeyboard(xd->display, CurrentTime);
}
/* ====================================================================== */
int UngrabKeyboard(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XUngrabKeyboard(xd->display, CurrentTime);
}
int i_UngrabKeyboard(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_UngrabKeyboard(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GrabKey(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XGrabKey(xd->display, AnyKey, AnyModifier, xd->window, True,
GrabModeAsync, GrabModeAsync);
}
int i_GrabKey(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GrabKey(xd, xp)
XD *xd;
XParams *xp;
{
XUngrabKey(xd->display, AnyKey, AnyModifier, xd->window);
}
/* ====================================================================== */
int UngrabKey(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XUngrabKey(xd->display, AnyKey, AnyModifier, xd->window);
}
int i_UngrabKey(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_UngrabKey(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int AllowEvents(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XAllowEvents(xd->display, AsyncPointer, CurrentTime);
}
int i_AllowEvents(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_AllowEvents(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GrabServer(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XGrabServer(xd->display);
}
int i_GrabServer(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GrabServer(xd, xp)
XD *xd;
XParams *xp;
{
XUngrabServer(xd->display);
}
/* ====================================================================== */
int UngrabServer(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XUngrabServer(xd->display);
}
int i_UngrabServer(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_UngrabServer(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int QueryPointer(xd, xp)
XD *xd;
XParams *xp;
{
Window rw, cw;
int xw, yw, xr, yr;
unsigned int keys_buttons;
for (i = 0; i < xp-> itns; i ++)
XQueryPointer(xd->display, DefaultRootWindow(xd->display), &rw, &cw,
&xw, &yw, &xr, &yr, &keys_buttons);
}
int i_QueryPointer(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_QueryPointer(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
static XTimeCoord ** time_coord;
int GetMotionEvents(xd, xp)
XD *xd;
XParams *xp;
{
int nevents;
for (i = 0; i < xp-> itns; i ++)
time_coord[i] = XGetMotionEvents(xd->display, xd->window,
CurrentTime, CurrentTime, &nevents);
}
int i_GetMotionEvents(xd, xp)
XD *xd;
XParams *xp;
{
time_coord = (XTimeCoord **) malloc(sizeof(XTimeCoord *) * xp->itns);
}
int c_GetMotionEvents(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
if (time_coord[i]) XFree((caddr_t) time_coord[i]);
free(time_coord);
}
/* ====================================================================== */
int TranslateCoordinates(xd, xp)
XD *xd;
XParams *xp;
{
int xpt, ypt, xjunk, yjunk;
xpt = XPOSITION(xd->display, xd->screen) + 16;
ypt = YPOSITION(xd->display, xd->screen) + 16;
for (i = 0; i < xp-> itns; i ++)
XTranslateCoordinates(xd->display, DefaultRootWindow(xd->display),
DefaultRootWindow(xd->display), xpt, ypt, &xjunk, &yjunk, &window);
}
int i_TranslateCoordinates(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_TranslateCoordinates(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int WarpPointer(xd, xp)
XD *xd;
XParams *xp;
{
int dst_x, dst_y;
for (i = 0; i < xp-> itns; i ++) {
if (i % 2)
dst_x = dst_y = 0;
else {
dst_x = DisplayWidth (xd->display, xd->screen);
dst_y = DisplayHeight(xd->display, xd->screen);
}
XWarpPointer(xd->display, None, DefaultRootWindow(xd->display),
0, 0, 0, 0, dst_x, dst_y);
}
}
int i_WarpPointer(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_WarpPointer(xd, xp)
XD *xd;
XParams *xp;
{
ParkPointer(xd); /* Restore the pointer to initial parking */
}
/* ====================================================================== */
int SetInputFocus(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XSetInputFocus(xd->display, xd->window, RevertToPointerRoot, CurrentTime);
}
int i_SetInputFocus(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_SetInputFocus(xd, xp)
XD *xd;
XParams *xp;
{
XSetInputFocus(xd->display, DefaultRootWindow(xd->display),
RevertToPointerRoot, CurrentTime);
}
/* ====================================================================== */
int GetInputFocus(xd, xp)
XD *xd;
XParams *xp;
{
Window focus;
int revert_to;
for (i = 0; i < xp-> itns; i ++)
XGetInputFocus(xd->display, &focus, &revert_to);
}
int i_GetInputFocus(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GetInputFocus(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int QueryKeymap(xd, xp)
XD *xd;
XParams *xp;
{
char key_vector[32];
for (i = 0; i < xp-> itns; i ++)
XQueryKeymap(xd->display, key_vector);
}
int i_QueryKeymap(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_QueryKeymap(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int CreateCursor(xd, xp)
XD *xd;
XParams *xp;
{
/* XCreatePixmapCursor(); */
}
int i_CreateCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
int c_CreateCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
int CreateGlyphCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
int i_CreateGlyphCursor(xd, xp)
XD *xd;
XParams *xp;
{
/* XCreateGlyphCursor(); */
}
int c_CreateGlyphCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
int FreeCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
int i_FreeCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
int c_FreeCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
int RecolorCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
int i_RecolorCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
int c_RecolorCursor(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
int QueryBestSize(xd, xp)
XD *xd;
XParams *xp;
{
unsigned int rwidth, rheight;
for (i = 0; i < xp-> itns; i ++)
XQueryBestSize(xd->display, CursorShape, xd->window, 16, 16,
&rwidth, &rheight);
}
int i_QueryBestSize(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_QueryBestSize(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int QueryExtension(xd, xp)
XD *xd;
XParams *xp;
{
int major_opcode, first_event, first_error;
static char *name = "MIT_SHM";
for (i = 0; i < xp-> itns; i ++)
XQueryExtension(xd->display, name, &major_opcode,
&first_event, &first_error);
}
int i_QueryExtension(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_QueryExtension(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
char ***extensions;
int ListExtensions(xd, xp)
XD *xd;
XParams *xp;
{
int nextensions;
for (i = 0; i < xp-> itns; i ++)
extensions[i] = XListExtensions(xd->display, &nextensions);
}
int i_ListExtensions(xd, xp)
XD *xd;
XParams *xp;
{
extensions = (char ***) malloc(sizeof(char **) * xp->itns);
}
int c_ListExtensions(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XFree((caddr_t) extensions[i]);
free(extensions);
}
/* ====================================================================== */
static KeySym **keysyms;
static KeySym *keysym ;
static int keycode_count;
static int keysyms_per_keycode;
int ChangeKeyboardMapping(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XChangeKeyboardMapping( xd->display,xd->display->min_keycode,
keysyms_per_keycode, keysym, keycode_count);
}
int i_ChangeKeyboardMapping(xd, xp)
XD *xd;
XParams *xp;
{
keycode_count = xd->display->max_keycode - xd->display->min_keycode + 1;
keysym = XGetKeyboardMapping( xd->display, xd->display->min_keycode,
keycode_count, &keysyms_per_keycode);
}
int c_ChangeKeyboardMapping(xd, xp)
XD *xd;
XParams *xp;
{
XFree((caddr_t) keysym);
}
/* ====================================================================== */
int GetKeyboardMapping(xd, xp)
XD *xd;
XParams *xp;
{
keycode_count = xd->display->max_keycode - xd->display->min_keycode + 1;
for (i = 0; i < xp-> itns; i ++)
keysyms[i] = XGetKeyboardMapping( xd->display,
xd->display->min_keycode, keycode_count,
&keysyms_per_keycode);
}
int i_GetKeyboardMapping(xd, xp)
XD *xd;
XParams *xp;
{
keysyms = (KeySym **) malloc(sizeof(KeySym *) * xp->itns);
}
int c_GetKeyboardMapping(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XFree((caddr_t) keysyms[i]);
free(keysyms);
}
/* ====================================================================== */
int ChangeKeyboardControl(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XChangeKeyboardControl(xd->display, kbd_cntl_mask, &kbd_cntl);
}
int i_ChangeKeyboardControl(xd, xp)
XD *xd;
XParams *xp;
{
XGetKeyboardControl(xd->display, &kbd_state);
kbd_cntl.key_click_percent = kbd_state.key_click_percent ;
kbd_cntl.bell_percent = kbd_state.bell_percent ;
kbd_cntl.bell_pitch = kbd_state.bell_pitch ;
kbd_cntl.bell_duration = kbd_state.bell_duration ;
kbd_cntl_mask = KBKeyClickPercent | KBBellPercent |
KBBellPitch | KBBellDuration ;
}
int c_ChangeKeyboardControl(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GetKeyboardControl(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XGetKeyboardControl(xd->display, &kbd_state);
}
int i_GetKeyboardControl(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GetKeyboardControl(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int Bell(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XBell(xd->display, -100); /* Ring silently !! */
}
int i_Bell(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_Bell(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int ChangePointerControl(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i++)
XChangePointerControl(xd->display, ptr_cntl.do_a, ptr_cntl.do_t,
ptr_cntl.acc_num, ptr_cntl.acc_denom, ptr_cntl.thresh);
}
int i_ChangePointerControl(xd, xp)
XD *xd;
XParams *xp;
{
ptr_cntl.do_a = 0;
ptr_cntl.do_t = 0;
XGetPointerControl(xd->display, &ptr_cntl.acc_num,
&ptr_cntl.acc_denom,&ptr_cntl.thresh);
}
int c_ChangePointerControl(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GetPointerControl(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i++)
XGetPointerControl(xd->display, &ptr_cntl.acc_num,
&ptr_cntl.acc_denom,&ptr_cntl.thresh);
}
int i_GetPointerControl(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GetPointerControl(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int SetScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XSetScreenSaver(xd->display, screensaver.timeout, screensaver.interval,
screensaver.prefer_blanking, screensaver.allow_exposures);
}
int i_SetScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{
XGetScreenSaver(xd->display, &screensaver.timeout, &screensaver.interval,
&screensaver.prefer_blanking, &screensaver.allow_exposures);
}
int c_SetScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GetScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XGetScreenSaver(xd->display, &screensaver.timeout, &screensaver.interval,
&screensaver.prefer_blanking, &screensaver.allow_exposures);
}
int i_GetScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{
}
int c_GetScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
int ChangeHosts(xd, xp)
XD *xd;
XParams *xp;
{
}
int i_ChangeHosts(xd, xp)
XD *xd;
XParams *xp;
{
}
int c_ChangeHosts(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
static XHostAddress **hosts;
int ListHosts(xd, xp)
XD *xd;
XParams *xp;
{
int nhosts;
Bool state;
for (i = 0; i < xp-> itns; i++)
hosts[i] = XListHosts(xd->display, &nhosts, &state);
}
int i_ListHosts(xd, xp)
XD *xd;
XParams *xp;
{
hosts = (XHostAddress **) malloc(sizeof(XHostAddress *) * xp->itns);
}
int c_ListHosts(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XFree((caddr_t) hosts[i]);
free(hosts);
}
/* ====================================================================== */
int SetAccessControl(xd, xp)
XD *xd;
XParams *xp;
{
}
int i_SetAccessControl(xd, xp)
XD *xd;
XParams *xp;
{
}
int c_SetAccessControl(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
int SetCloseDownMode(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XSetCloseDownMode(xd->display, DestroyAll);
}
int i_SetCloseDownMode(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_SetCloseDownMode(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int KillClient(xd, xp)
XD *xd;
XParams *xp;
{
}
int i_KillClient(xd, xp)
XD *xd;
XParams *xp;
{
}
int c_KillClient(xd, xp)
XD *xd;
XParams *xp;
{
}
/* ====================================================================== */
int ForceScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XForceScreenSaver(xd->display, ScreenSaverReset);
}
int i_ForceScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_ForceScreenSaver(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
#define NUM_PTR_MAP 3
static unsigned char ptr_map[NUM_PTR_MAP];
static int num_ptr_map; /* Actual return value from XGetPointerMapping */
int SetPointerMapping(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XSetPointerMapping(xd->display, ptr_map, num_ptr_map);
}
int i_SetPointerMapping(xd, xp)
XD *xd;
XParams *xp;
{
num_ptr_map = XGetPointerMapping(xd->display, ptr_map, NUM_PTR_MAP);
}
int c_SetPointerMapping(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
int GetPointerMapping(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XGetPointerMapping(xd->display, ptr_map, NUM_PTR_MAP);
}
int i_GetPointerMapping(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_GetPointerMapping(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */
static XModifierKeymap **modifier_key_maps;
static XModifierKeymap *modifier_key_map;
int SetModifierMapping(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XSetModifierMapping(xd->display, modifier_key_map);
}
int i_SetModifierMapping(xd, xp)
XD *xd;
XParams *xp;
{
modifier_key_map = XGetModifierMapping(xd->display);
}
int c_SetModifierMapping(xd, xp)
XD *xd;
XParams *xp;
{
XFree((caddr_t) modifier_key_map);
}
/* ====================================================================== */
int GetModifierMapping(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
modifier_key_maps[i] = XGetModifierMapping(xd->display);
}
int i_GetModifierMapping(xd, xp)
XD *xd;
XParams *xp;
{
modifier_key_maps = (XModifierKeymap **) malloc(sizeof(XModifierKeymap *) *
xp->itns);
}
int c_GetModifierMapping(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XFree((caddr_t) modifier_key_maps[i]);
free(modifier_key_maps);
}
/* ====================================================================== */
int NoOperation(xd, xp)
XD *xd;
XParams *xp;
{
for (i = 0; i < xp-> itns; i ++)
XNoOp(xd->display);
}
int i_NoOperation(xd, xp)
XD *xd;
XParams *xp;
{ }
int c_NoOperation(xd, xp)
XD *xd;
XParams *xp;
{ }
/* ====================================================================== */